The present invention relates generally to packet communications across networks, and particularly, to an improved connection-oriented communications system for providing reliable datagram packet-based communications.
Currently, a datagram-based communications protocol known as the Simple Network Management Protocol (xe2x80x9cSNMPxe2x80x9d), is implemented to perform network management of vendor telecommunications equipment over long distances across local area networks (LANs) and wide area networks (WANs). For example, in the system 10 as shown in FIG. 1, many vendors 12 of a telecommunications carrier 15 (e.g., MCIWorldcom, assignee of the present invention) rely on SNMP communications to manage their equipment across a LAN/WAN 20. Thus, a piece of equipment 13 may generate a message about its operational state and this message may be communicated via SNMP from the equipment to MCIWorldcom""s network management software 16 across the network. In another example implementation, a network operation, administrator or maintenance center, e.g., located in North Carolina, may be required to provision switches remotely located across the country, e.g., in Texas, via a WAN.
It is the case that the Simple Network Management Protocol is an unreliable protocol, based on the Internet Protocol Suite""s Uniform Datagram Packet (xe2x80x9cUDPxe2x80x9d) protocol. An unreliable protocol is one that does not guarantee delivery of information to its network destination, and thus requires retransmission of datagrams with error management being pushed up into the application layer. Thus, in the above-described example, datagrams traveling between North Carolina and Texas via SNMP may be routinely dropped in the WAN 20, possibly causing provisioning activity to fail. Obviously, the loss of provisioning packet information for these switches may be detrimental to the carrier""s business.
When a network is in trouble, e.g., when a large percentage (80% or more) of all network communications are failing, it is very difficult to actually communicate with a device. Even if SNMP were TCP based, it would be very difficult to communicate with a device under these conditions. This is because TCP requires a number of contiguous packets to be sent and received to open a TCP session, and if many of the packets are lost, TCP would fail. However, with UDP PDUs, no setup packets are required, and advantageously, single SNMP commands can fit within a single datagram. So, if a network is in trouble, datagrams can be machine gunned at a host, and even if 90% of all packets are being lost, eventually, the SNMP command will be delivered to the device. Network Management is needed most when the network is in trouble, and this is why the datagram-based SNMP protocol is used.
Furthermore, the problem with SNMP being an unreliable protocol is that it does not support the notion of a transaction well. A transaction is a sequence of datagrams being exchanged between a manager and agent to accomplish a task. The SNMP works fine when a management task requires only one or two datagrams. However, if a management task requires a complex set of datagrams being exchanged, then an unreliable protocol does not work well, because any datagram element within the transaction can be lost in the network. A real life example of this problem is provisioning data services for telecommunications carrier customers where setting up high speed data services requires complex SNMP based transactions.
No mechanism or technique is currently available to remedy these problems. Consequently, it would be highly desirable to implement a mechanism that would virtually eliminate the loss of datagram packets transmitted over a LAN/WAN.
The present invention satisfies the above mentioned need by providing a reliable correction-oriented communications to/from a management system and vendor equipment, which have datagram based communications.
Particularly, the method and system for delivering reliable datagram service comprises the following components: a device for capturing datagrams intended to traverse the LAN/WAN; a device for extracting datagram payloads from captured datagrams, with the payloads being typically application level PDUs; a device for sending datagram payloads through LAN/WAN, by use of a reliable connection-oriented protocol, e.g., TCP/IP; and, after payload has been sent across LAN/WAN, a device for reconstructing the payload as a datagram and sending the reconstructed datagram to the intended local recipient.
Preferably, this technology may be implemented at the OS level in the kernel, or it may be implemented as an application level process. As the mechanism of the invention allows for non-intrusive hardening of existing datagram based communications, existing communications software does not have to be recompiled to use this technology, thus facilitating addition of this technology to existing systems.
Advantageously, this technology makes datagram communications reliable; therefore, it can benefit many different commercial applications.